The invention relates to controlling Quality of Service (QoS) in mobile communications systems having a packet data transmission capability.
A mobile communications system refers generally to any telecommunications system which enables a wireless communication when users are moving within the service area of the system. A typical mobile communications system is a Public Land Mobile Network (PLMN). A mobile communications network is usually an access network providing a user with a wireless access to external networks, hosts, or services offered by specific service providers.
General packet radio service GPRS is a new service in the GSM system (Global system for mobile communications), and is one of the objects of the standardisation work of the GSM phase 2+ at the ETSI (European Telecommunications Standards institute). The GPRS operational environment comprises one or more subnetwork service areas, which are interconnected by a GPRS backbone network. A subnetwork comprises a number of packet data service nodes, referred to as serving GPRS support nodes SGSN, each of which is connected to the GSM mobile communications network (typically to base station systems BSS) in such a way that it can provide a packet service for mobile data terminals via several base stations, i.e. cells. The intermediate mobile communications network provides packet-switched data transmission between a support node and mobile data terminals. Different subnetworks are in turn connected to an external data network, e.g. to a public switched data network PSPDN, via GPRS gateway support nodes GGSN. The term GSN refers commonly to both SGSN and GGSN. The GPRS service thus allows providing packet data transmission between mobile data terminals and external data networks when the GSM network functions as an access network.
In order to access the GPRS services, a mobile station (MS) shall first make its presence known to the network by performing a GPRS attach. This operation establishes a logical link between the MS and the SGSN, and makes the MS available for Short Message Service (SMS) over GPRS, paging via the SGSN, and notification of incoming GPRS data. More particularly, when the MS attaches to the GPRS network, i.e. in a GPRS attach procedure, the SGSN creates a mobility management context (MM context). The authentication of the user is also carried out by the SGSN in the GPRS attach procedure. In order to send and receive GPRS data, the MS shall activate the packet data address that it wants to use, by requesting a PDP (Packet Data Protocol) activation procedure. This operation makes the MS known in the corresponding GGSN, and interworking with external data networks can commence. More particularly, a PDP context is created in the MS and the GGSN and the SGSN. The PDP context defines different data transmission parameters, such as the PDP type (e.g. X.25 or IP), PDP address (e.g. an X.121 address), quality of service QoS and NSAPI (Network Service Access Point Identifier). The MS activates the PDP context with a specific message, Activate PDP Context Request, in which it gives information on the Temporary Logical Link Identity (TLLI), PDP type, PDP address, required QoS and NSAPI, and optionally the access point name APN.
FIG. 1 illustrates a GPRS packet radio network implemented in the GSM system. For a more detailed description of the GPRS, reference is made to ETSI GSM 03.60, version 6.1.0, and the cross-references thereof.
The basic structure of the GSM system comprises two subsystems: a base station system BSS and a network subsystem NSS. The BSS and mobile stations MS communicate with each other over radio links. In the base station system BSS, each cell is served by a base station BTS. A number of base stations are connected to a base station controller BSC which controls the radio frequencies and channels used by the BTS. Base station controllers BSC are connected to a mobile services switching centre MSC. As regards a more detailed description of the GSM system, reference is made to the ETSI/GSM recommendations and The GSM System for Mobile Communications, M. Mouly and M. Pautet, Palaiseau, France, 1992, ISBN:2-957190-07-7.
In FIG. 1, the GPRS system connected to the GSM network comprises one GPRS network, which in turn comprises one serving GPRS support node (SGSN) and several GPRS gateway support nodes (GGSN). The different support nodes SGSN and GGSN are interconnected by an intra-operator backbone network. In the GPRS network there may be any number of serving support nodes and gateway support nodes.
The serving GPRS support node SGSN is a node which serves the mobile station MS. Each SGSN controls packet data service within the area of one or more cells in a cellular packet radio network, and therefore, each SGSN is connected (via a Gb interface) to a certain local element of the GSM system. This connection is typically established to the base station system BSS, i.e. to base station controllers BSC or to a base station BTS. The mobile station MS located in a cell communicates through the mobile communication network with a BTS over a radio interface and further with the SGSN to the service area of which the cell belongs. In principle, the mobile communication network between the SGSN and the MS only relays packets between these two. To achieve this, the mobile communication network provides packet-switched transmission of data packets between the MS and the SGSN. It has to be noted that the mobile communication network only provides a physical connection between the MS and the SGSN, and thus its exact function and structure are not significant with respect to the invention. The SGSN is also provided with a signalling interface Gs to the visitor location register VLR of the mobile communication network and/or to the mobile services switching centre, e.g. signalling connection SS7. The SGSN may transmit location information to the MSCNLR and/or receive requests for searching for a GPRS subscriber from the MSCNLR.
The GPRS gateway support nodes GGSN connect an operator's GPRS network to external systems, such as other operators' GPRS systems, data networks 11, such as an IP network (Internet) or an X.25 network, and service centres. A border gateway BG provides access to an inter-operator GPRS backbone network 12. The GGSN may also be connected directly to a private corporate network or a host. The GGSN includes GPRS subscribers' PDP addresses and routing information, i.e. SGSN addresses. Routing information is used for tunnelling protocol data units PDU from data network 11 to the current switching point of the MS, i.e. to the serving SGSN. The functionalities of the SGSN and GGSN can be connected to the same physical node.
The home location register HLR of the GSM network contains GPRS subscriber data and routing information and it maps the subscriber's IMSI into one or more pairs of the PDP type and PDP address. The HLR also maps each PDP type and PDP address pair into one or more GGSNs. The SGSN has a Gr interface to the HLR (a direct signalling connection or via an internal backbone network 13). The HLR of a roaming MS and its serving SGSN may be in different mobile communication networks.
An intra-operator backbone network 13, which interconnects an operator's SGSN and GGSN equipment can be implemented by means of a local network, for example, such as an IP network. It should be noted that an operator's GPRS network can also be implemented without the intra-operator backbone network, e.g. by providing all features in one computer.
An inter-operator backbone network enables communication between different operators' GPRS networks.
In order to send and receive GPRS data, the MS shall activate the packet data address that it wants to use, by requesting a PDP activation procedure. This operation makes the MS known in the corresponding GGSN, and interworking with external data networks can commence. More particularly, a PDP context is created in the MS and the GGSN and the SGSN.
As a consequence, three different MM states of the MS are typical of the mobility management (MM) of a GPRS subscriber: idle state, standby state and ready state. Each state represents a specific functionality and information level, which has been allocated to the MS and SGSN. Information sets related to these states, called MM contexts, are stored in the SGSN and the MS. The context of the SGSN contains subscriber data, such as the subscriber's IMSI, TLLI, location and routing information, etc.
In the idle state the MS cannot be reached from the GPRS network, and no dynamic information on the current state or location of the MS, i.e. the MM context, is maintained in the network. In the standby and ready states the MS is attached to the GPRS network. In the GPRS network, a dynamic MM context has been created for the MS, and a logical link LLC (Logical Link Control) is established between the MS and the SGSN in a protocol layer. The ready state is the actual data transmission state, in which the MS can transmit and receive user data.
In the standby and ready states, the MS may also have one or more PDP contexts (Packet Data Protocol), which are stored in the serving SGSN in connection with the MM context. The PDP context defines different data transmission parameters, such as PDP type (e.g. X.25 or IP), PDP address (e.g. an X.121 address), QoS and NSAPI. The MS activates the PDU context with a specific message, Activate PDP Context Request, in which it gives information on the TLLI, PDP type, PDP address, required QoS and NSAPI, and optionally the access point name APN. When the MS roams to the area of a new SGSN, the new SGSN requests MM and PDP contexts from the old SGSN.
As shown in FIG. 2, a GPRS system comprises layered protocol structures called planes for signalling and transmitting user information. The signalling plane consists of protocols for control and support of the transmission plane functions. The transmission plane consists of a layered protocol structure providing user information transfer, along with associated information transfer control procedures (e.g. flow control, error detection, error correction and error recovery). The Gb interface keeps the transmission plane of the NSS platform independent of the underlying radio interface.
The GPRS Tunnelling Protocol (GTP) tunnels user data and signalling between GPRS support nodes in the GPRS backbone network. All PDP-PDUs shall be encapsulated by the GTP. The GTP provides mechanisms for flow control between GSNs, if required. GTP is specified in GSM 09.60. The Transmission Control Protocol (TCP) carries GTP-PDUs in the GPRS backbone network for protocols that need a reliable data link (e.g., X.25), and the UDP carries GTP-PDUs for protocols that do not need a reliable data link (e.g. IP). The TCP provides flow control and protection against lost and corrupted GTP-PDUs. The user datagram protocol (UDP) provides protection against corrupted GTP-PDUs. The TCP is defined in RFC 793. The UDP is defined in RFC 768. The Internet Protocol (IP) is the GPRS backbone network protocol used for routing user data and control signalling. The GPRS backbone network may initially be based on the IP version 4 (IPv4) protocol. Ultimately, IP version 6 (IPv6) will be used. IP version 4 is defined in RFC791.
The Subnetwork Dependent Convergence Protocol (SNDCP) is a transmission functionality which maps network-level characteristics onto the characteristics of the underlying network. The SNDCP is specified in GSM 04.65. The Logical Link Control (LLC) provides a highly reliable ciphered logical link. The LLC shall be independent of the underlying radio interface protocols in order to allow introduction of alternative GPRS radio solutions with minimum changes to the NSS. The LLC is specified in GSM 04.64. The relay function relays LLC-PDUs between the Um and Gb interfaces in the BSS. In the SGSN, the relay function relays PDP-PDUs between the Gb and Gn interfaces. The Base Station System GPRS Protocol (BSSGP) conveys routing and QoS-related information between BSS and SGSN. The BSSGP is specified in GSM 08.18. The Frame Relay layer transports BSSGP PDUs. RLC/MAC layer contains two functions: The Radio Link Control function provides a radio-solution-dependent reliable link. The Medium Access Control function controls the access signalling (request and grant) procedures for the radio channel, and the mapping of LLC frames onto the GSM physical channel. RLCIMAC is described in GSM 03.64.
FIG. 1 also shows the structure of a data packet DP. It comprises a payload PL carrying actual user information, and a number of headers H for identification, routing and priority information, etc. Each protocol layer adds a header of its own to the data packet. The item PrT will be explained later.
Various identities are employed in the GPRS. A unique International Mobile Subscriber Identity (IMSI) shall be allocated to each mobile subscriber in GSM. This is also the case for GPRS-only mobile subscribers. A GPRS subscriber, identified by an IMSI, shall have one or more temporarily and/or permanently associated network layer addresses, i.e. PDP addresses which conform to the standard addressing scheme of the respective network layer service used. A PDP address may be an IP address or an X.121 address. PDP addresses are activated and deactivated through SM (session management) procedures.
The NSAPI and TLLI are used for network layer routing. A NSAPI/TLLI pair is unambiguous within a given routing area. In the MS, the NSAPI identifies the PDP service access point (PDP-SAP). In the SGSN and the GGSN, the NSAPI identifies the PDP context associated with a PDP address. Between the MS and the SGSN, the TLLI unambiguously identifies the logical link. NSAPI is a part of the tunnel identifier (TID). TID is used by the GPRS tunnelling protocol between GSNs to identify a PDP context. A TID consists of an IMSI and an NSAPI. The combination of IMSI and NSAPI uniquely identifies a single PDP context. The TID is forwarded to the GGSN upon PDP Context activation and it is used in subsequent tunnelling of user data between the GGSN and the SGSN to identify the MS's PDP contexts in the SGSN and GGSN. The TID is also used to forward N-PDUs (network-level Packet Data Units) from the old SGSN to the new SGSN at and after an inter-SGSN routing update.
Each SGSN and GGSN have an IP address, either of type IPv4 or IPv6, for inter-communication over the GPRS backbone network. For the GGSN, this IP address corresponds also to a logical GSN name.
The GPRS transparently transports PDP-PDUs between external networks and MSs. Between the SGSN and the GGSN, PDP-PDUs are routed and transferred with the IP protocol. The GPRS Tunnelling Protocol GTP transfers data through tunnels. A tunnel is identified by a tunnel identifier (TID) and a GSN address. All PDP-PDUs are encapsulated and decapsulated for GPRS routing purposes. Encapsulation functionality exists at the MS, at the SGSN, and at the GGSN. Encapsulation allows PDP-PDUs to be delivered to and associated with the correct PDP context in the MS, the SGSN, or the GGSN. Two different encapsulation schemes are used; one for the GPRS backbone network between two GSNs, and one for the GPRS connection between a SGSN and an MS.
Between an SGSN and a GGSN, the GPRS backbone network encapsulates a PDP-PDU with a GPRS Tunnelling Protocol header, and it inserts this GTP-PDU in a TCP-PDU or UDP-PDU that again is inserted in an IP-PDU. The IP and GTP-PDU headers contain the GSN addresses and tunnel endpoint-identifiers necessary to uniquely address a GSN PDP context.
Between an SGSN and an MS, a PDP context is uniquely addressed with a TLLI/NSAPI pair. The TLLI is assigned when the MS initiates the Attach function. NSAPIs are assigned when the MS initiates the PDP Context Activation function.
Quality of service (QoS) defines how the packet data units (PDUs) are handled during transmission through the GPRS network. For example, the QoS defined for the PDP addresses control the order of transmission, buffering (the PDU queues) and discarding of the PDUs in the SGSN and the GGSN, especially in a congested situation. Therefore, different QoS levels will present different end-to-end delays, bit rates and numbers of lost PDUs, for example, for the end users.
A QoS profile is associated with each PDP Address. For example, some PDP addresses may be associated with e-mail that can tolerate lengthy response times. Other applications cannot tolerate delay and demand a very high level of throughput, interactive applications being one example. These different requirements are reflected in the QoS. If a QoS requirement is beyond the capabilities of a PLMN, the PLMN negotiates the QoS as close as possible to the requested QoS. The MS either accepts the negotiated QoS or deactivates the PDP context.
Currently, a GPRS QoS profile contains five parameters: service precedence, delay class, reliability, and mean and peak bit rates. Service precedence defines some kind of priority for the packets-belonging to a certain PDP context (i.e. which packets will be dropped in case of congestion). Delay class defines mean and maximum delays for the transfer of each data packet belonging to that context. Reliability in turn specifies whether acknowledged or unacknowledged services will be used at LLC (Logical Link Control) and RLC (Radio Link Control) layers. In addition, it specifies whether protected mode should be used in case of unacknowledged service, and whether the GPRS backbone should use TCP or UDP to transfer data packets belonging to the PDP context. Furthermore, these varying QoS parameters are mapped to four SAPIs (Service Access Point Identifiers) available at the LLC layer.
The GPRS network is not capable of meeting the various QoS requirements of Internet applications. IP (Internet Protocol) traffic takes place between a mobile host and a fixed host located in an external network, e.g. in the Internet. Different Internet applications require different kinds of service, i.e. QoS, from the underlying network. Thus, when the mobile host is using GPRS to access the Internet, the GPRS network should be capable of meeting various QoS requirements of Internet applications. There are actually at least two IP traffic types that should be taken into account: real-time and non-real-time traffic. One example of real-time traffic is voice transmission. E-mail and file transfer in turn are examples of non-real-time applications.
Currently, QoS parameters can only be associated with a certain PDP context (i.e. a certain IP address, if the PDP type is IP). Therefore, setting different QoS values for different applications that use the same IP address is not possible. This is a very severe drawback of the current QoS scheme. The current GPRS specifications also define only very static QoS behaviour: A mobile station can only initiate a QoS negotiation when activating the PDP context. To summarise the main problems: The GPRS QoS scheme is too static, i.e. the QoS cannot be changed by the MS or the GGSN after the QoS has been negotiated for the first time, and moreover, all applications that use the same IP address must also use the same QoS profile, i.e. the QoS values. This is obviously not sufficient for supporting the requirements of various Internet applications and traffic streams, such as voice transmission, real-time video, compressed video, e-mail transfer, file transfer, and high priority control information exchange.
The Internet includes at the moment two different QoS schemes: Integrated Services and Differentiated Services. Integrated Services consist of three traffic types: Guaranteed Service, Controlled Load Service, and Best-Effort Service. Guaranteed Service is very difficult to provide without introducing a large amount of overhead to the system. The reason for this overhead is that end-to-end traffic flows should be established for different application connections. Therefore, this requires large amounts of database management, control information exchange, and traffic policing of the system. Controlled Load provides unloaded network behaviour even under congested situations. Controlled Load can be implemented by means of priorities. Therefore, implementing Controlled Load Service would probably be easier than Guaranteed Service, which needs strict guarantees on transmission delays etc. Best-Effort Service does not need any guarantees on the QoS, and is thus very easy to implement in any network.
Differentiated Services in the Internet are based on the idea that no data flows are needed, but instead every data packet carries QoS information itself. This allows a very flexible and easy way to provide a certain QoS to the applications. The drawback is that the capacity cannot be fully guaranteed because no fixed capacity is ever allocated to a certain application flow.
However, this scheme is much more efficient from the capacity and system point of view than the Integrated Services scheme.
Similar problems as described above may arise in any mobile communications network.